$(function(){
    // 全选
    $(".quanxuan").click(function(){
        let status=$(this).prop("checked")
        $(".inp1").prop("checked",status);
        $(".quanxuan").prop("checked",status);
        allCount()
    })
    // 单个选框框
    $(".inp1").click(function(){
        // 获取单个选框的总个数
        let l1=$(".inp1").length;
        // 获取选中的个数
        let l2=$(".inp1:checked").length;
        // console.log(`总长度${l1}`,`选中长度${l2}`);
        if (l1==l2) {
            $(".quanxuan").prop("checked",true)
        }else{
            $(".quanxuan").prop("checked",false)
        }
        allCount()
    })

    // 加
    $(".addNum").click(function(){
        $(this).siblings(".reduce").css({
            "cursor": "pointer",
            "backgroundColor":""
        })
        let num=$(this).next().val()
        num++
        $(this).next().val(num)
        count($(this))
        allCount()
    })
    // 减
    $(".reduce").click(function(){
        let num=$(this).prev().val()
        num--
        if (num>=1) {
            $(this).prev().val(num)
        }else{
            $(this).css({
                "cursor": "not-allowed",
                "backgroundColor":"gray"
            })
        }
        count($(this))
        allCount()
    })

    // 当前行的单价
    function count(obj){
        // 获取当前行的商品的数量
        let num=obj.siblings("input").val();
        // 获取到商品的价格
        let price=obj.closest("ul").find(".shopp-price1").text()
        // 计算
        let result=(num*price).toFixed(2);
        obj.closest("ul").find(".shopp-sum1").text(result)
    }

    // 总价
    function allCount(){
        // 拿到所有选中状态的单项的数量和小计
        let allNum=0;
        let allSum=0;
        $(".inp1:checked").each(function(index,dom){
            // 利用循环累加求和
            let num=Number($(dom).closest("ul").find(".num").val())
            allNum+=num;
            let pices=Number($(dom).closest("ul").find(".shopp-sum1").text())
            allSum+=pices;
        })
        // 把总数传递过去
        $("#aNum").text(allNum)
        // 把总价传送过去
        $("#total").text(allSum.toFixed(2))
    }
})